package com.cskaoyan.bytestream.in;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;

/*
      刚刚，通过OutputStream对象(FileOutputStream对象)，我们成功实现了，向文本输出数据的功能，
      现在，我们使用InputStream从该文本中，读出刚刚写入的内容，并输出在控制台。

      同时，注意到InputStream是抽象类，不能直接实例化，需要使用其子类对象来实现功能

     FileInputStream的构造方法：
            // 创建一个文件字节输入流对象，从File对象指定的文件中读取数据到内存
            FileInputStream(File file)

            // 创建一个文件字节输入流对象，从路径名字符串指定的文件中读取数据到内存
            FileInputStream(String name)

         创建一个FileInputStream对象，jvm作了哪些工作：
            1. FileInputStream对象在被创建之前，jvm会首先到操作系统中，找目标文件
                a. 找到，就不做任何额外工作
                b. 找不到，则直接抛出异常FileNotFoundException
            2. 在jvm内存中，创建FileInputStream对象
            3. 在FileInputStream对象和目标文件之间，建立数据传输通道


 */
public class Demo1 {
    public static void main(String[] args) throws FileNotFoundException {
        // FileInputStream(File file)
        //File file = new File("a.txt");
        //InputStream fistInput = new FileInputStream(file);

        // FileInputStream(String name)
        InputStream secondIntput = new FileInputStream("a.txt");


    }
}
